//
//  MZNameSpace.swift
//  MZTool
//
//  Created by gby on 2022/1/25.
//

import Foundation

public struct MZKit<Base>{
    public let base: Base
    public init(_ base: Base) {
        self.base = base
    }
}

public protocol MZNameSpace{
    associatedtype WrappableType
    var mz: WrappableType { get}
    static var mz: WrappableType.Type{get}
}

public extension MZNameSpace{
    static var mz: MZKit<Self>.Type {
        return MZKit.self
    }
    var mz: MZKit<Self> {
        get {return MZKit( self)}
    }
}
